XX. mendeko Euskararen Corpus estatistikoa

Testuingurua

5. FUNTZIO BERRIEN DEFINIZIOA.

5.1. DEFUN FUNTZIOA.

LISP lengoaiak eskaintzen dituen funtzio aurredefinituetatik abiatuz, programatzaileak bere funtzioak definitu ditzake.

Aukera hau erabat ezinbestekoa da Programazio Modularraren ideiei jarraitu ahal izateko.

Problema oso bat ebazteko idatzi behar den funtzioan erabili ahal dira bere azpiproblemak ebatziko dituzten beste funtzio batzu.

Zehatz-mehatz definitu den azpiproblema bakoitza geroxeago aztertuko da, batzutan berauek ere beste problema desberdin eta sinpleagotan banatuko direlarik.

Funtzio berriak definitzeko DEFUN funtzioa erabiltzen da, ondoko egitura sintaktikoari jarraituz:

(DEFUN amplt;izenaampgt; amplt;parametro-listaampgt; amplt;gorputzaampgt;)

DEFUN forma berezia da, ez ditu ebaluatzen bere argumentuak, bat ere ez.

Bere helburua zera da: izen sinboloari funtzio berri baten definizioa lotzea.

Hortik aurrera, izen sinboloa forma ebaluagarri baten lehenengo osagai gisa erabili ahal izango da.

DEFUN forma batek beste funtzio-aplikazioek egiten duten bezala balio bat itzuliko du: definitu berri duen funtzioaren izena, hain zuzen.

Normalean funtzio-aplikazioek ondorio bakar bat dute: emaitzaren kalkulua.

Normalean ere, emaitzaren kalkuluak ez dakar aldaketarik sinboloei datxekieten balio, funtzio edo propietate-listetan (programazio-inguruan alegia).

Salbuespen gisa, funtzio baten aplikazioak bere emaitza kalkulatzeaz gain, inguru horretako aldeketarik sor dezake.

Bere emaitza kalkulatu ondoren, funtzioaren aplikazioak sortu duen emaitza bera ez den beste edozein ekintzari albo-ondorioa deituko diogu.

Izen sinboloari egiten zaion funtzio-definizio baten atxekidura DEFUN forma bereziaren albo-ondorioa da.

Parametro-lista delakoan gorputza barruan ageri daitezkeen parametroen sinboloak azaltzen dira.

Funtzioaren aplikazio konkretu batetan parametroek hartuko dituzten balioak funtzio-deiko argumentuak ebaluatuz lortuko dira.

Parametro-listan ageri daitezkeen parametro-mota guztiak 5.3 atalean deskribatzen dira.